package com.example.demo.properties;

import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * Copyright(C), 2020-2021, AmbroseCdMeng
 * FileName:    GetPersonInfoProperties
 * Author:      AmbroseCdMeng
 * Date:        2021/1/1115:03
 * Description: 装载配置文件信息
 * History:
 * <author>     <time>      <version>       <desc>
 * 作者姓名     修改时间        版本号           描述
 */

// 声明此类是 Spring 管理类。常用在无法用 @Service、 @Repository 描述的 Spring 管理类上，相当于通用注解
@Component
// 把同类配置信息自动封装为一个实体类，属性 prefix 代表配置文件中配置项的前缀
@ConfigurationProperties(prefix = "personinfo")
// 也可以直接把 @ConfigurationProperties 定义在 bean （如 PersonInfo） 中，这样 Bean 就不需要 @Component 和 @ConfigurationProperties 注解了
@Getter
@Setter
public class GetPersonInfoProperties {
    private String name;
    private int age;
}
